package com.qf.order.mapper;

import com.qf.order.domain.dto.OrderAnalysisDTO;
import com.qf.order.domain.dto.OrderStatsDTO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * 订单分析Mapper
 */
@Mapper
public interface OrderAnalysisMapper {

    /**
     * 查询订单统计数据
     */
    OrderStatsDTO selectOrderStats(OrderAnalysisDTO params);

    /**
     * 按日查询趋势数据
     */
    List<Map<String, Object>> selectDayTrend(OrderAnalysisDTO params);

    /**
     * 按周查询趋势数据
     */
    List<Map<String, Object>> selectWeekTrend(OrderAnalysisDTO params);

    /**
     * 按月查询趋势数据
     */
    List<Map<String, Object>> selectMonthTrend(OrderAnalysisDTO params);

    /**
     * 查询状态分布
     */
    List<Map<String, Object>> selectStatusDistribution(OrderAnalysisDTO params);

    /**
     * 查询运输类型分布
     */
    List<Map<String, Object>> selectTransportDistribution(OrderAnalysisDTO params);

    /**
     * 查询区域分布
     */
    List<Map<String, Object>> selectRegionDistribution(OrderAnalysisDTO params);

    /**
     * 查询客户分布
     */
    List<Map<String, Object>> selectCustomerDistribution(OrderAnalysisDTO params);
}

